<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>
<HEAD>
   <TITLE>class  SG_EXPORT osg::Switch</TITLE>
   <META NAME="GENERATOR" CONTENT="DOC++ 3.4.8">
</HEAD>
<BODY BGCOLOR="#ffffff">

<H2>class  SG_EXPORT <A HREF="#DOC.DOCU">osg::Switch</A></H2></H2><BLOCKQUOTE>Switch is a Group node which allows switching between children.</BLOCKQUOTE>
<HR>

<H2>Inheritance:</H2>
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=95>
<param name=classes value="MNode,M,CGroup,MGroup.html,CSwitch,MSwitch.html">
<param name=before value="M,M,M">
<param name=after value="Md_SP,Md_,M">
<param name=indent value="0,1,2">
<param name=arrowdir value="down">
</APPLET>
<HR>

<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.123.2">Switch</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.123.3">Switch</A></B>(const <!1><A HREF="Switch.html#DOC.2.123.3">Switch</A>&amp;, const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop=CopyOp::SHALLOW_COPY)
<DD><I>Copy constructor using CopyOp to manage deep vs shallow copy</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.123.4">META_Node</A></B>(<!1><A HREF="osg.html">osg</A>, <!1><A HREF="Switch.html">Switch</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   void <B><A HREF="#DOC.2.123.5">traverse</A></B>(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>&amp; nv)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   void <B><A HREF="#DOC.2.123.6">setValue</A></B>(const int value)
<DD><I> Selects the active child Node or enables a special SwitchType mode.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   const int <B><A HREF="#DOC.2.123.7">getValue</A></B>() const 
<DD><I> Returns the number of the active child Node or the SwitchType</I>
</DL></P>

<P><DL>
<DT><H3>Public Members</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>enum  <B><A HREF="#DOC.2.123.1">SwitchType</A></B>
<DD><I> Special mode values for the Switch.</I>
</DL></P>

<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.123.9">_value</A></B>
<DD><I>The current Switch value.</I>
</DL></P>

<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   <B><A HREF="#DOC.2.123.8">~Switch</A></B>()
</DL></P>

</DL>
<HR><H3>Inherited from <A HREF="Group.html">Group</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>virtual   bool <B>addChild</B>( Node* child )
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual   bool <B>removeChild</B>( Node* child )
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual   bool <B>replaceChild</B>( Node* origChild, Node* newChild )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   const unsigned int <B>getNumChildren</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   Node* <B>getChild</B>( const unsigned int i )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   const Node* <B>getChild</B>( const unsigned int i ) const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   bool <B>containsNode</B>( const Node* node ) const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   ChildList::iterator <B>findNode</B>( const Node* node )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   ChildList::const_iterator <B>findNode</B>( const Node* node ) const 
</DL></P>

<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>ChildList <B>_children</B>
</DL></P>

<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>virtual   const bool <B>computeBound</B>() const 
</DL></P>

</DL>

<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>Switch is a Group node which allows switching between children.
Typical uses would be for objects which might need to be rendered
differently at different times, for instance a switch could be used 
to represent the different states of a traffic light.</BLOCKQUOTE>
<DL>

<A NAME="SwitchType"></A>
<A NAME="DOC.2.123.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>enum  SwitchType</B></TT>
<DD>
Special mode values for the Switch. Use these if you want to
turn on/off all child nodes.
<DL><DT><DD></DL><P><DL>

<A NAME="ALL_CHILDREN_ON"></A>
<A NAME="DOC.2.123.1.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> ALL_CHILDREN_ON</B></TT>
<DD>Turn on all children. 
<DL><DT><DD></DL><P>
<A NAME="ALL_CHILDREN_OFF"></A>
<A NAME="DOC.2.123.1.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> ALL_CHILDREN_OFF</B></TT>
<DD>Turn off all children. 
<DL><DT><DD></DL><P></DL>

<A NAME="Switch"></A>
<A NAME="DOC.2.123.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Switch()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Switch"></A>
<A NAME="DOC.2.123.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Switch(const <!1><A HREF="Switch.html#DOC.2.123.3">Switch</A>&amp;, const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop=CopyOp::SHALLOW_COPY)</B></TT>
<DD>Copy constructor using CopyOp to manage deep vs shallow copy
<DL><DT><DD></DL><P>
<A NAME="META_Node"></A>
<A NAME="DOC.2.123.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> META_Node(<!1><A HREF="osg.html">osg</A>, <!1><A HREF="Switch.html">Switch</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="traverse"></A>
<A NAME="DOC.2.123.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   void traverse(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>&amp; nv)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="setValue"></A>
<A NAME="DOC.2.123.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   void setValue(const int value)</B></TT>
<DD>
Selects the active child Node or enables a special
SwitchType mode. 

<DL><DT><DT><B>Parameters:</B><DD><B>value</B> -  the number of the active child
(<!1><A HREF="ImpostorSpriteManager.html#DOC.2.61.3">first</A> child == number 0) or SwitchType. Invalid values
will be ignored.<BR><DD></DL><P>
<A NAME="getValue"></A>
<A NAME="DOC.2.123.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   const int getValue() const </B></TT>
<DD>
Returns the number of the active child Node or the SwitchType
<DL><DT><DD></DL><P>
<A NAME="~Switch"></A>
<A NAME="DOC.2.123.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   ~Switch()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_value"></A>
<A NAME="DOC.2.123.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int _value</B></TT>
<DD>The current Switch value. 
<DL><DT><DD></DL><P></DL>

<HR><DL><DT><B>This class has no child classes.</B></DL>

<DL><DT><DD></DL><P><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I></P><HR>
<BR>
This page was generated with the help of <A HREF="http://docpp.sourceforge.net">DOC++</A>.
</BODY>
</HTML>
